package com.sky.config;

import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;

@Configuration
@Slf4j
public class RedisConfiguration {
    @Bean
    // 在@Configuration中使用，将对象的控制权交给IOC容器管理
    // 其它类中想使用时直接注入即可
    public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory){
        log.info("开始创建redis模板类....");
        RedisTemplate redisTemplate = new RedisTemplate();
        // 关联上连接工厂对象
        redisTemplate.setConnectionFactory(redisConnectionFactory);
        // 设置序列化器  指定成字符串类型的Redis序列化器  防止Redis里面的key乱码，看起来直观
        redisTemplate.setKeySerializer(new StringRedisSerializer());

        return redisTemplate;
    }

}
